package com.aman.transformer;

import android.support.v4.view.ViewPager;
import android.view.View;

/**
 * ParallaxTransformer
 * 项目名称  ：ParallaxViewPager
 * 类名称    ：
 * 类描述    ：
 * 创建人    ：Aman/862032054@qq.com
 * 创建时间  ：2016/9/12 13:34
 * 修改人    ：admin
 * 修改时间  ：2016/9/12 13:34
 * 修改备注  ：
 *
 * @version V2.0 2016年9月13日 10:32:16 废弃 {@link ViewHolder}
 */
public class ParallaxTransformer implements ViewPager.PageTransformer {
    private float parallaxSpeed = 0.5f;

    private final int viewToParallax;

    public ParallaxTransformer(final int viewToParallax) {
        this.viewToParallax = viewToParallax;
    }

    @Override
    public void transformPage(View view, float pagePos) {
        View parallaxView = view.findViewById(viewToParallax);
//        if (view.getTag() == null || !(view.getTag() instanceof ViewHolder)) {
//            return;
//        }
//        View parallaxView = ((ViewHolder) view.getTag()).getParallaxView();
        if (parallaxView == null) {
            return;
        }
        if (pagePos <= -1 || pagePos >= 1) {
            return;
        }
        //Log.e("ParallaxTransformer", -pagePos * parallaxSpeed * view.getWidth() + "");
        parallaxView.setTranslationX(-pagePos * parallaxSpeed * view.getWidth());
    }

    public void setParallaxSpeed(float parallaxSpeed) {
        this.parallaxSpeed = parallaxSpeed;
    }
}